package com.matchmaking.system.service;


import cn.hutool.core.lang.tree.Tree;
import com.matchmaking.system.domain.SysPost;
import com.matchmaking.system.domain.SysRole;
import com.matchmaking.system.domain.SysUser;

import java.util.List;

/**
 * @Description: TODO
 * @Author 卟哭！
 * @Date 2024/03/21  15:39
 * @Version 1.0
 */
public interface SysUserService {
    /**
     * 查询所有用户
     * @return
     */
    public List<SysUser> selectObjects();
    public List<SysUser> selectObjects(SysUser entity);

    /**
     * 根据id查询用户
     * @param id
     * @return
     */
    public SysUser selectById(Integer id);

    /**
     * 添加用户
     * @param entity
     * @return
     */
    public boolean insertObject(SysUser entity);

    /**
     * 修改用户对象 根据ID
     * @param user
     * @return
     */
    boolean updateObjest(SysUser user);

    /**
     * 删除用户 根据id
     * @param id
     * @return
     */
     boolean deleteObjest(Long id);
    /**
     * 批量删除用户 根据id
     * @param ids
     * @return
     */
     boolean deleteObjests(Long[] ids);

    /**
     * 查询角色列表
     * @return
     */
    List<SysRole> selectRoles();

    /**
     * 查询岗位列表
     * @return
     */
    List<SysPost> selectPosts();

    /**
     * 部门数状列表
     * @return
     */
    List<Tree<String>> selectDeptsTree();


    boolean updateStatus(SysUser user);
}
